//package com.dongnam.quanly.common.util;
//
//import java.text.DecimalFormat;
//import java.util.Date;
//
//import sun.misc.GC.LatencyRequest;
//
//import com.dongnam.quanly.common.controller.ChungTuMoiNhatController;
//import com.dongnam.quanly.common.model.ChungTuMoiNhat;
//import com.dongnam.quanly.common.model.enumtype.LoaiID;
//import com.dongnam.quanly.common.model.enumtype.LoaiDonHang;
//import com.dongnam.quanly.common.model.enumtype.LoaiPhieu;
//
///**
// * Class này sẽ cung cấp chưng năng sinh tự động ID cho các đơn hàng, hóa đơn,
// * phiếu nhập xuất, thu chi ..vv
// * 
// * @author DangTanLoc
// * 
// */
//public class CreateIDUtil {
//
//	private static ChungTuMoiNhatController controller;
//
//	public static ChungTuMoiNhatController getController() {
//		if (controller == null)
//			controller = new ChungTuMoiNhatController();
//		return controller;
//	}
//
//	static public String customFormat(String pattern, double value) {
//		DecimalFormat myFormatter = new DecimalFormat(pattern);
//		return myFormatter.format(value);
//
//	}
//
//	static public String slitString(String source, String prefix) {
//		return source.substring(prefix.length());
//	}
//
//	public static String createDonHangID(LoaiDonHang loaidonhang) {
//		// create prefix
//
//		String prefix = "";
//		if (loaidonhang.equals(LoaiDonHang.MUA_HANG)) {
//			prefix = "DH-MH";
//		} else if (loaidonhang.equals(LoaiDonHang.BAN_HANG)) {
//			prefix = "DH-BH";
//		} else if (loaidonhang.equals(LoaiDonHang.DUNG_NOI_BO)) {
//			prefix = "DH-NB";
//		} else if (loaidonhang.equals(LoaiDonHang.CHUYEN_KHO)) {
//			prefix = "DH-CK";
//		}
//
//		// Lấy ra số đơn hàng mới nhất trong database
//		ChungTuMoiNhat lastid = getController().getById(LoaiID.SoDonHang, true);
//		if (lastid == null) {
//			lastid = new ChungTuMoiNhat();
//			lastid.setLoaiChungTu(LoaiID.SoDonHang);
//			lastid.setLastupdate(new Date());
//			lastid.setValue(customFormat(prefix + "##########", 1));
//
//		} else {
//			String id = lastid.getValue();
//			double result = Double.parseDouble(slitString(id, prefix));
//
//			lastid.setLastupdate(new Date());
//			lastid.setValue(customFormat(prefix + "##########", result + 1));
//		}
//
//		getController().makePersistent(lastid);
//		return lastid.getValue();
//	}
//
//	public static String createPhieuNhapXuatID(LoaiPhieu loaiphieu) {
//		String prefix = "";
//		if (loaiphieu.equals(LoaiPhieu.PHIEU_NHAP)) {
//			prefix = "PNK";
//		} else if (loaiphieu.equals(LoaiPhieu.PHIEU_XUAT)) {
//			prefix = "PXK";
//		}
//
//		// Lấy ra số phiếu nhập xuất mới nhất trong database
//		ChungTuMoiNhat lastid = getController().getById(LoaiID.SoPhieuNhapXuat, true);
//		if (lastid == null) {
//			lastid = new ChungTuMoiNhat();
//			lastid.setLoaiChungTu(LoaiID.SoPhieuNhapXuat);
//			lastid.setLastupdate(new Date());
//			lastid.setValue(customFormat(prefix + "##########", 1));
//
//		} else {
//			String id = lastid.getValue();
//			double result = Double.parseDouble(slitString(id, prefix));
//
//			lastid.setLastupdate(new Date());
//			lastid.setValue(customFormat(prefix + "##########", result + 1));
//		}
//
//		getController().makePersistent(lastid);
//		return lastid.getValue();
//	}
//
//	public static String createSerialNumber() {
//		String prefix = "SN";// Serial Number
//
//		// Lấy ra số phiếu nhập xuất mới nhất trong database
//		ChungTuMoiNhat lastid = getController().getById(LoaiID.SerialNumber, true);
//		if (lastid == null) {
//			lastid = new ChungTuMoiNhat();
//			lastid.setLoaiChungTu(LoaiID.SerialNumber);
//			lastid.setLastupdate(new Date());
//			lastid.setValue(customFormat(prefix + "##########", 1));
//
//		} else {
//			String id = lastid.getValue();
//			double result = Double.parseDouble(slitString(id, prefix));
//
//			lastid.setLastupdate(new Date());
//			lastid.setValue(customFormat(prefix + "##########", result + 1));
//		}
//
//		getController().makePersistent(lastid);
//		return lastid.getValue();
//	}
//}
